#pragma once

namespace GameConstants
  {
  const int STARTING_MONEY = 10000;
  const int TREE_COST = STARTING_MONEY / 20;
  const int WALKWAY_COST = STARTING_MONEY / 500;
  const int GRASS_COST = STARTING_MONEY / 500;
  const int WATER_COST = STARTING_MONEY / 5;
  const int FERRIS_WHEEL_COST = STARTING_MONEY * 2;
  const int BALLOONS_SHOP_COST = 750;
  const int BENCH_COST = STARTING_MONEY / 50;
  const double REFUND_PERCENT = 0.2; //20% refund

  const int TREE_REFUND = static_cast<int>(TREE_COST * REFUND_PERCENT); 
  const int WATER_REFUND = static_cast<int>(WATER_COST * REFUND_PERCENT);
  const int WALKWAY_REFUND = static_cast<int>(WALKWAY_COST * REFUND_PERCENT);
  const int FERRIS_WHEEL_REFUND = static_cast<int>(FERRIS_WHEEL_COST * REFUND_PERCENT);
  const int BALLOONS_SHOP_REFUND = static_cast<int>(BALLOONS_SHOP_COST * REFUND_PERCENT);
  const int BENCH_REFUND = static_cast<int>(BENCH_COST * REFUND_PERCENT);

  //
  const int FERRIS_WHEEL_PROFIT = FERRIS_WHEEL_COST / 80;
  const int BALLOONS_SHOP_PROFIT = BALLOONS_SHOP_COST / 30;
  //

  const int BALLOONS_SHOP_HUMAN_CAPACITY = 2;
  const int FERRIS_WHEEL_HUMAN_CAPACITY = 15;
  const int BALLOONS_SHOP_PROFIT_PER_HUMAN = BALLOONS_SHOP_COST / 20;
  const int FERRIS_WHEEL_PROFIT_PER_HUMAN = FERRIS_WHEEL_COST / 150;

  const int BALLOONS_SHOP_SERVICE_COST = BALLOONS_SHOP_COST / 50;
  const int FERRIS_WHEEL_SERVICE_COST = FERRIS_WHEEL_COST / 20;

  const int FACILITIES_COUNT = 6;
  const double TREE_EXP_COEF = 5.0 / GroundConstants::CELL_COUNT;
  const double FERRIS_WHEEL_EXP_COEF = 7.0 / GroundConstants::CELL_COUNT;
  const double BENCH_EXP_COEF = 4.0 / GroundConstants::CELL_COUNT;
  const double BALLOONS_SHOP_EXP_COEF = 6.0 / GroundConstants::CELL_COUNT;
  const double GROUND_MAX_VARIANCE = 4.0;
  const double WATER_EXP_COEF = 0.6;

  const size_t WALKWAYS_PER_HUMAN = 10;
  }